/*
 * $Id$
 *
 * Copyright ( c ) 2014 XuNuo Corporation. All Rights Reserved.
 *
 * This software is the confidential and proprietary information of XuNuo
 * Corporation ("Confidential Information").  You shall not disclose such
 * Confidential Information and shall use it only in accordance with the terms
 * of the license agreement you entered into with XuNuo Corporation or a XuNuo
 * authorized reseller (the "License Agreement"). XuNuo may make changes to the
 * Confidential Information from time to time. Such Confidential Information may
 * contain errors.
 *
 * EXCEPT AS EXPLICITLY SET FORTH IN THE LICENSE AGREEMENT, XuNuo DISCLAIMS ALL
 * WARRANTIES, COVENANTS, REPRESENTATIONS, INDEMNITIES, AND GUARANTEES WITH
 * RESPECT TO SOFTWARE AND DOCUMENTATION, WHETHER EXPRESS OR IMPLIED, WRITTEN OR
 * ORAL, STATUTORY OR OTHERWISE INCLUDING, WITHOUT LIMITATION, THE IMPLIED
 * WARRANTIES OF MERCHANTABILITY, TITLE, NON-INFRINGEMENT AND FITNESS FOR A
 * PARTICULAR PURPOSE. XuNuo DOES NOT WARRANT THAT END USER'S USE OF THE
 * SOFTWARE WILL BE UNINTERRUPTED, ERROR FREE OR SECURE.
 *
 * XuNuo SHALL NOT BE LIABLE TO END USER, OR ANY OTHER PERSON, CORPORATION OR
 * ENTITY FOR INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY OR CONSEQUENTIAL
 * DAMAGES, OR DAMAGES FOR LOSS OF PROFITS, REVENUE, DATA OR USE, WHETHER IN AN
 * ACTION IN CONTRACT, TORT OR OTHERWISE, EVEN IF XuNuo HAS BEEN ADVISED OF THE
 * POSSIBILITY OF SUCH DAMAGES. XuNuo' TOTAL LIABILITY TO END USER SHALL NOT
 * EXCEED THE AMOUNTS PAID FOR THE XuNuo SOFTWARE BY END USER DURING THE PRIOR
 * TWELVE (12) MONTHS FROM THE DATE IN WHICH THE CLAIM AROSE.  BECAUSE SOME
 * STATES OR JURISDICTIONS DO NOT ALLOW LIMITATION OR EXCLUSION OF CONSEQUENTIAL
 * OR INCIDENTAL DAMAGES, THE ABOVE LIMITATION MAY NOT APPLY TO END USER.
 *
 * Copyright version 2.0
 */
package com.th.supcom.pds.impl.common.enums;

import net.carefx.framework.exception.BusinessException;

/**
 *
 */
public enum PhamIoSort
{
    /**
     * 领药出库
     */
    PhamOut ("2007", "领药出库"),
    /**
     * 退药入库
     */
    PhamIn ("1001", "退药入库"),

    /**
     * 住院处方
     */
    InpPresc ("2009", "住院处方"),

    /**
     * 住院摆药
     */
    InpDispense ("2010", "住院摆药"),

    /**
     * 处方退药
     */
    prescReturn ("1010", "处方退药"),

    /**
     * 摆药入库
     */
    dispenseIn ("1011", "摆药入库"),

    /**
     * 冲抵入库
     */
    MactchIn ("1012", "冲抵入库");

    private String m_code;
    private String m_name;

    private PhamIoSort (String code, String name)
    {
        this.m_code = code;
        this.m_name = name;
    }

    public static PhamIoSort getEnumByCode (String code)
    {
        if (null == code)
        {
            throw new BusinessException ("查找出入库方式枚举传入参数为空！");
        }
        for (PhamIoSort ps : PhamIoSort.values ())
        {
            if (ps.getEnumCode ().equals (code))
            {
                return ps;
            }
        }
        return null;

    }

    public String getEnumCode ()
    {
        return this.m_code;
    }

    public String getEnumName ()
    {
        return this.m_name;
    }

}
